﻿
using System;
using System.Runtime.Serialization;
using V82;
using V82.Перечисления;//Ссылка;
namespace V82.Перечисления//Ссылка
{
	///<summary>
	///(Общ)
	///</summary>
	[DataContract]
	public enum ВидыОперацийПередачаТоваров
	{
		[NonSerialized]
		ПустаяСсылка = - 1,
	///<summary>
	///(Общ)
	///</summary>
		[EnumMember(Value = "{\"Ссылка\":\"088fdb88-2fbb-4189-854c-8e431f425af7\", \"Представление\":\"ВПереработку\"}")]
		ВПереработку = 0,//передача материалов переработчику
	///<summary>
	///(Общ)
	///</summary>
		[EnumMember(Value = "{\"Ссылка\":\"d13032f8-c9eb-40c6-8448-a0116669d6ad\", \"Представление\":\"ИзПереработки\"}")]
		ИзПереработки = 1,//передача продукции заказчику
		[EnumMember(Value = "{\"Ссылка\":\"289f40b4-6409-4030-919e-8e3e179d846f\", \"Представление\":\"ВПереработкуБрак\"}")]
		ВПереработкуБрак = 2,//передача продукции переработчику (брак)
	}
	public static partial class ВидыОперацийПередачаТоваров_Значения//:ПеречислениеСсылка
	{
		///<summary>
		///(Общ)
		///</summary>
		public static readonly Guid ВПереработку = new Guid("438e4c85-421f-f75a-4189-2fbb088fdb88");//передача материалов переработчику
		///<summary>
		///(Общ)
		///</summary>
		public static readonly Guid ИзПереработки = new Guid("11a04884-6966-add6-40c6-c9ebd13032f8");//передача продукции заказчику
		public static readonly Guid ВПереработкуБрак = new Guid("3e8e9e91-9d17-6f84-4030-6409289f40b4");//передача продукции переработчику (брак)
		public static ВидыОперацийПередачаТоваров Получить(this ВидыОперацийПередачаТоваров Значение, byte[] Ссылка)
		{
			return Получить(Значение, new Guid(Ссылка));
		}
		public static ВидыОперацийПередачаТоваров Получить(this ВидыОперацийПередачаТоваров Значение, Guid Ссылка)
		{
			if(Ссылка == ВПереработку)
			{
				return ВидыОперацийПередачаТоваров.ВПереработку;
			}
			else if(Ссылка == ИзПереработки)
			{
				return ВидыОперацийПередачаТоваров.ИзПереработки;
			}
			else if(Ссылка == ВПереработкуБрак)
			{
				return ВидыОперацийПередачаТоваров.ВПереработкуБрак;
			}
			return ВидыОперацийПередачаТоваров.ПустаяСсылка;
		}
		public static byte[] Ключ(this ВидыОперацийПередачаТоваров Значение)
		{
			return Ссылка(Значение).ToByteArray();
		}
		public static Guid Ссылка(this ВидыОперацийПередачаТоваров Значение)
		{
			switch (Значение)
			{
				case ВидыОперацийПередачаТоваров.ВПереработку: return ВПереработку;
				case ВидыОперацийПередачаТоваров.ИзПереработки: return ИзПереработки;
				case ВидыОперацийПередачаТоваров.ВПереработкуБрак: return ВПереработкуБрак;
			}
			return Guid.Empty;
		}
	}
}